﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace YBOT_Field_Control
{
    /// <summary>
    /// Common Team Variables
    /// </summary>
    public class TeamVariables
    {
        private Time tfTime = new Time();
        private Field_Control tfFC = new Field_Control();

        public TowerVariables tower;    //Tower Class variable
        public string teamColor;        //Team color "red" or "green"
        public int score;               //Team's score
        public int autoCount;           //Autonomous Mode Counter
        public int finalScore;          //Team's final score
        public int penalty;             //Penalty amount
        public bool dq;                 //Team DQ flag
        public string matchResult;      //Match Result string
        public bool autoFinished;       //Autonomous mode finished flag
        public int autoScore;           //Autonomous mode score
        public int midScore;            //Middle round score
        public int endGameScore;        //End of game score
        public int teamNum;             //Team's number 1=red 2=green 3=both

        //------------------------------------------------------------------------------------------------\\
        //Current year's game variables
        //------------------------------------------------------------------------------------------------\\

        public int bonus;
        public int globeCount;
        public bool activeTeam;
        public int randomTower;
        public int randomLight;
        public int randomButton;
        public int scoredGlobes;


        //Constructor
        public TeamVariables(string _color)
        {
            //Sets team color for this class
            this.teamColor = _color;

            if (_color == "red") teamNum = 1;
            else if (_color == "green") teamNum = 2;
            else teamNum = 0;

        }

        /// <summary>
        /// Set Team Data
        /// </summary>
        public void setTowers()
        {
        }

        /// <summary>
        /// Resets variable
        /// </summary>
        public void reset()
        {
            this.score = 0;
            this.autoCount = 0;
            this.finalScore = 0;
            this.penalty = 0;
            this.dq = false;
            this.matchResult = null;
            this.autoFinished = false;
            this.autoScore = 0;
            this.midScore = 0;
            this.endGameScore = 0;
            this.bonus = 0;
            this.activeTeam = false;
            this.globeCount = 1;
            this.randomTower = 0;
            this.randomLight = 0;
            this.randomButton = 0;
            this.scoredGlobes = 0;
        }

    }

    /// <summary>
    /// Common Team Tower Variables 
    /// </summary>
    public class TowerVariables
    {

    }
}
